import axios from 'axios'
// 引入路由
import Router from '../router/index.js'

const request = axios.create({
  // 指定请求地址的基路径
  baseURL: 'http://139.196.38.213/api',
  timeout: 10000
})

// 添加请求拦截器
request.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么,发什么
  // 解析的时候,要用headers，
  // console.log('请求拦截器', config)
  config.headers.common.token = localStorage.getItem('token')
  // 可以做一个loading
  return config
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error)
})

// 添加响应拦截器
request.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  // 删除loading
  // console.log('响应拦截器', response)
  // 因为加入购物车时,才验证了token,
  // 对响应数据做:验证登录状态,没登录,跳转到登录
  if (response.data.state === 10086 && localStorage.getItem('isLogin') !== null) {
    Router.push('/login')
    // 原生
    // location.href = 'http://localhost:8080/login'
  }
  return response
}, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error)
})

export default request
